﻿<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<title>Quoi de neuf dans le Kit Fuse 2.1</title><link type="text/css" rel="stylesheet" href="as2doc.css">
<style type="text/css">
<!--
.style1 {font-size: x-small}
.style3 {font-size: xx-small}
-->

</style>
<script src="AC_RunActiveContent.js" type="text/javascript"><!--// --></script>
</head>
<body framespacing="0" topmargin="6" leftmargin="6" marginheight="6" marginwidth="6"><div class="docindex"><a href="index-right.html" class="head">Page Principale</a> | <a href="com/mosesSupposes/fuse/package-summary.html" class="head" target="classFrame">Package</a> | <a href="index-all.html" class="head">Index</a> | <a href="help-doc.html" class="head">Aide</a></div><table border="0" cellpadding="0" cellspacing="4" width="100%" class="subnavigation"><tr>
  <td><a href="index.html" target="_top">Frames (Navigation) </a> | <a href="release-notes-2.1.html" target="_top">Sans Frames</a></td>
</tr></table><hr size="1">
<h2>Quoi de neuf dans le Kit Fuse 2.1</h2>
<p><span class="style1">[ Changements depuis version 2.0 seulement. Pour des changements précédents voir <a href="upgrading.html">Mettre à jour</a> ]</span></p>
<ul>
  <li><a href="#overview">Vue d'ensemble</a></li>
  <li><a href="#highlights">Coups de projecteurs</a></li>
  <li> <a href="#customease">La nouvelle classe CustomEasing</a></li>
  <li><a href="#fuse">Mises à jour de la classe Fuse (séquenceur)</a></li>
  <li><a href="#engine">Mise à jour de la classe ZigoEngine (moteur d'animation)</a></li>
  <li><a href="#fusefmp">Mise à jour de la classe FuseFMP (manipulation des BitmapFilter)</a></li>
  <li><a href="#kit">Autres mises à jour du Kit Fuse</a></li>
  <li><a href="#bugs">Bugfixes et internes</a></li>
</ul>
<a name="overview"></a><br>
<h3>Vue d'ensemble</h3>
<p>Si vous connaissez Fuse Kit, vous savez déjà qu'il contient trois éléments principaux:</p>
<ul>
  <li>Un moteur d'animation robuste nommé ZigoEngine</li>
  <li>Un ensemble d'outils de  séquence nommé Fuse</li>
  <li>Un ensemble additionnel d'outils de BitmapFilter appelé FuseFMP.</li>
</ul>
<p>Depuis la version 2.0, l'architecture de Fuse vous a offert la possibilité de mélanger et assortir ces trois composants de code suivant les besoins de vos projets.</p>
<p>La version 2.1 est une publication significative qui améliore <i>chacun de ces trois</i> éléments. Les informations qui suivent seront plus utiles pour ceux qui ont déjà utilisé le kit Fuse par le passé et veulent savoir ce qui a changé ou a été rajouté. Si vous par contre vous découvrez le kit Fuse il serait probablement péférable de commencer par les "premiers pas".<br>
</p>
<p>&nbsp;</p>
<p><br>
<a name="highlights"></a></p>
<h3>Coups de projecteurs</h3>
<p>Si vous possédez Flash, installer la nouvelle Extension de Fuse serait une bonne opération.<i>Si vous n'utilisez pas le logiciel Flash, un swf est fourni dans le set de téléchargement.</i> qui contient:</p>
<ul>
  <li>Des indications de code (code-hinting) améliorés ainsi qu'une aide en ligne<br>
  </li>
  <li><a name="customeasingtool" id="customeasingtool"></a>Un nouvel outil <b>Custom Easing Tool</b> est installé dans Flash avec l'extension. Il vous permet de définir vos propres interpolations de mouvement en tirrant sur les points d'une courbe, les visionner, puis les renommer et les sauvegarder pour un usage futur.<br>
  <!-- TODO vérifier les menus en français de flash-->
    Vous trouverez cet outil sous : <b>Fenêtre &gt; autres panneaux &gt; customEasingTool2</b><br>  <span class="footer">Un grand merci à L.Zigo qui a créé le panneau v1 et le code d'easing sur lequel est basée cette mise à jour.</span><br>
    <br>
    <img src="customEasingTool.gif" alt="Custom Easing Tool v2" width="264" height="227"><br>
  </li><!------------------------------------------------------------------------------------------------------------------------------------------->
 
  <li><b>Le panneau gauche de la fenêtre Action</b> qui simplement écrit et insère du code dans votre script sur simple double-click. <br> <span class="footer"> Toute une serie d'extras: <i>Commandes de setup, raccourcis des équations PennerEasing, Chaînes de commandes Fuse, Objets ZigoEngine Callback </i> -- plus <i>Chaque paramètre d'Objet 'Action' de Fuse disponible</i> sous la main en une place - soigneusement organisés sous forme arborescente!</span><br>
      <br>
      <img src="actionsPanel.gif" alt="Fuse 2.1 Panneau d'Actions" width="771" height="301"></li>
</ul>
<p>Les nouvelles fonctionalités vous permettent de <strong>Faire des avances rapides dans les séquences Fuse</strong>. Mais aussi pour la compilation et le débuggage, lorsque vous souhaitez passer rapidement certaines transitions, vous avez la possibilité <em>rêgler les vitesses auxquelles jouent chaque Tween au niveau du SWF.</em></p>
<p>Autre changement bénéfique et notable: <strong>maintenant les séquences Fuses interrompues s'arrêttent automatiquement</strong> (en auto-clear ils s'autodétruisent également), ce qui représente <strong><em> un changement dans le comportement du kit</em></strong> qui a pour but de faciliter l'interactivité en conjonction avec Fuse.</p>
<p>L'avancée primordiale pour les developpeurs de niveau avancé est certainement le <strong>"multi-tween"</strong> intégré dans le moteur d'animation. Ce qui singnifie que vous pouvez "tweener" chacune des sous propriétés d'un objet ou d'un tableau comme un seul élément, d'un seul coup! Par conscenquent vous pourriez tweener un Objet Matrix et utiliser un callback de mise à jour afin de réappliquer l'objet Matrix à une autre cible dans le but d'appliquer d'un seul coup différentes transfomations visuelle — y compris <i>biaisage (skew)</i>.(Vous trouverez des exemples de code dans la documentation et sous forme de fichiers inclus dans l'archive de téléchargement)</p>
<ul>
  <li>Voici un exemple. Une invocation de Tween dans un SWF change de propriétés complexes comme les alphas, tableaux de <em>couleurs et de taux</em>ainsi que l'objet <em> matrix</em> , pendant qu'une <em>updfunc</em> callback redessine le contenu. Le tween est répété un certain nombre de fois, montrant les changement des propriétés complexes du dégradé. (Vous trouverez un FLA avec un exemple similaire dans le pack de téléchargement.) Contrairement aux versions précédentes du moteur, la version 2.1 rend possible de tweener directement un propriété genre matrice en donnant uniquement <i>une seule </i> comme <span class="code">{a:".1", b:"-.1"}</span>, affectant chacune des sous propiétés spécifiée dans l'objet d'origine.<br>
      <br>
        <script src="AC_RunActiveContent.js" type="text/javascript"><!--
AC_FL_RunContent( 'codebase','http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0','width','500','height','75','src','multi-with-colorsarray2','quality','high','pluginspage','http://www.macromedia.com/go/getflashplayer','movie','multi-with-colorsarray2' ); //end AC code
// --></script>
<noscript>
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="500" height="75">
<param name="movie" value="multi-with-colorsarray2.swf">
<param name="quality" value="high">
<embed src="multi-with-colorsarray2.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="500" height="75"></embed>
</object>
</noscript>
</li>
</ul>
<p>Et à la demande du générale :</p>
<p>Fuse a des valeurs d'<em>easing</em> et de <em>duration </em>(durée) par defaut au niveau de l'instance, ce qui evite d'avoir à répetter l'écriture de ces propriétés à chaque action; Le moteur d'interpolations ZigoEngine se dote maintenant de contrôles de valeurs d'arrondi mathématiques pour chaque tween; mais encore les filtres de flou (BlurFilters) de FuseFMP utilisent maintenant 0 comme valeur par défaut, afin que les tweens<em>Blur_blurX</em> ou <em>Blur_blurY</em> laissent les ropriétés non-affectés nettes. cf Details plus bas.</p>
<p>Bonus: tous les <em>symboles $ (dollar)</em> ont été retirés des paramètres de FuseFMP... woohoo!<br>
</p>
<p><a name="customease"></a></p>
<h3>Nouvelle classe CustomEasing et nouveau panneau de l'IDE (Flash)</h3>
<ul>
<li>L'outil <a href="#customeasingtool">Custom Easing Tool</a> génère un tableau pour chaque style d'interpolation de mouvement très facile à placer dans le code.</li>
</ul>
<a name="fuse"></a><br>
<br>
<br>
<br>
<h3>Mises à jour de la classe Fuse (séquenceur)</h3>
<ul>
<li>Depuis la version 2.1, les Fuses s'arrêttent de jouer quand elles sont interrompues.<ul>
      <li>Nouveau, la valeur de classe par défaut: <code>Fuse.<strong>AUTOSTOP = true </strong></code>et la propriété d'instance <strong><code>autoStop</code></strong> ont été rajoutées</li>
      <li>Les Fuses qui s'arrêtent automatiquement dispatchent l'évènement <b><code>"onStop"</code></b> et, si réglées sur auto-clear, s'auto-détruisent.</li>
    </ul>
  <p><span class="modifier">Notez que ce point est un CHANGEMENT de COMPORTEMENT par DEFAUT de Fuse qui s'applique à tout utilisateur. </span>Cela devrait normalement simplement permettre de coder l'interactivité de façon plus facile et ne nécessite aucune action de votre part. Pour de plus amples informations reportez-vous à <i>Si vous mettez Fuse à jour dans un programme existant.</i>. Sur la page <a href="upgrading.html">Mettre à jour</a>.</p>
  </li>
<li>La syntaxe simplifiée (Simple Syntax) permet maintenant d'utiliser des Triggers.<ul>
<li>Les Triggers rendent l'animation par sequences bien plus flexibles, en amenant la possibilité d'avancer dans la séquence avant que tous les Tweens dans un groupe aient fini leurs taches.</li>
<li>Pour ajouter un trigger de 2 secondes dans un group il vous suffit d'inclure <code>Fuse.addCommand( "trigger", 2 ); </code></li>
<li>T(<i>Pour ceux qui utilisent la syntax Objet:</i> Fuse dispose des Triggers temporels depuis la version 2.0 - ne manquez pas d'utiliser cette puissante fonctionnalité!)</li>
</ul>
</li>
<li>Nouveau <strong><code>Avance Rapide (fastForward)</code></strong> methode: passer directement un groupe ou toutes les animations d'un Fuse.</li>
<li>Nouveaux les easings et durées sont paramétrables par defaut au niveau de l'instance. <br> <br> <code>public var <strong>duration</strong>:Number;<br> public var <strong>easing</strong>:Object;</code>
<ul>
<li>Par exemple, <code>myFuse.easing = "easeInOutQuad";</code> établit une valeur par defaut pour <code>myFuse</code> uniquement, qui a priorité sur la valeur statique<code>ZigoEngine.EASING</code> mais qui peut toujours être réaffectée dans une action qui specifie son propre paramètre <code>ease / easing</code>.</li>
</ul>
</li>
<li>Actions appliquées: La propiété <strong><code>action</code></strong> peut maintenant être un tableau (Array). (cf constructeur Fuse dans la doc)<ul>
<li><code>{ target: clip1_mc, action:[ fadeIn, slideIn ] } </code></li>
<li>Comme auparavant vous pouvez également inclure des action appliquées à l'intérieur d'un groupe.</li>
</ul>
</li>
<li>Nouveau moteur de propiété tweenable <strong><code>_fade / fade</code></strong> - qui fonctionne maintenant comme <code>_alpha + _visible</code>.<ul>
<li><code>{ target:mc, <b>fade:0,</b> seconds:2 }</code> coupe la visibilté apres avoir tweener l'_alpha à 0</li>
<li><code>{ target:mc, <b>start_fade:0,</b> seconds:2 }</code> (à l'inverse) enclenche la visibilité avant de faire une fondue vers la valeur de transparence 100 (100% opaque)</li>
</ul>
<a name="engine"></a><br>
<br>
<br>
<br>
</li>
</ul>
<h3>Mises à jour de la classe ZigoEngine (moteur d'animation)</h3>
<ul>
<li>support du <strong>'Multi-tween'</strong> : <u>Vous avez la maintenant possiblilité de tweener directement toutes les propriétés dans les Objet ou Tableaux </u> comme un unique tween. (cf: <i>Coups de projecteurs</i> plus haut, docs, fichiers exemples files inclus à l'archive de téléchargement.)<br>
<ul>
<li>Tweenez des propriétés complexes de FuseFMP telles <code>BevelFilter_alphas</code> ou <code>BevelFilter_colors</code></li>
<li>Tweenez toutes les valeurs de tout Objet ou Tableau dans votre code avec une invocation </li>
<li>Tweenez des objets <code>Matrix</code>  pour accomplir déformations (skewing) et d'autres transformations</li>
<li>Fonctionalité spéciale: Tout Tableau qui contient 'colors' dans son nom sera Tweené comme valeurs hexidecimale</li>
</ul>
</li>
<li>Nouveau contrôle de arrondissage Mathématique au niveau du tween: Déterminez si chaque étape d'un tween est arrondie ou autorise des valeurs décimales. C'est utile quand la valeur par défaut (<code>ZigoEngine.ROUND_RESULTS</code>) est activée, mais vous devez garder des valurs décimales pour certaines propriétés dans un écart de 0-à-1 tel que les alphas des BitmapFilter. Ou si vous utilisez des polices pixel que vous pouvez préférer utiliser l'arrondissage pour tweensqui affecteront le text tout en laissant la valeur par défaut désactivée. <ul>
<li>Ajoutez la propriété<code><strong>roundResults</strong>:true</code> à tout objet callback de tween pour forcer ce Tween à s'arrondir</li>
<li>Ou encore , utilisez <code><strong>roundResults</strong>:false</code> pour annuler l'arrondi quand la valeur globale par défaut <code>ZigoEngine.ROUND_RESULTS = true </code></li>
</ul>
</li>
<li>Nouvelle fonctionalité de debugage : <u>passez, accélérez, ou raletissez tout tween de façon globale</u>.<br>
<ul>
<li>Par défaut: <code>public static var ZigoEngine.<strong>TIME_MULTIPLIER</strong>:Number = 1;</code></li>
<li>Mettez la valeur à 2 pour ralentir à mi-vitesse, .5 pour la doubler</li>
<li>Mettez la à 0 to passer autravers des animations (à la diffèrence de la nouvelle fonction Fuse.fastForward les callbacks sont exécutés)</li>
</ul>
</li>
<li>Nouveau <strong><code>skipTweenTo</code></strong> méthode et Raccourci: sauter à n'importe qu'elle position à l'interieur d'un tween actif <br> <br> <code>ZigoEngine.<strong>skipTweenTo</strong>(seconds:Number, targs:Object, props:Object):Void</code></li>
<li>Nouvelle propiété tweenable <strong><code>_fade / fade</code></strong> - qui fonctionne maintenant comme <code>_alpha + _visible</code>.<ul>
<li>Fonctionne bien sùr aussi dans Fuse, voyez ci-dessus pour les exemples.</li>
<li>Les raccourcis<code>fadeIn</code> &amp; <code>fadeOut</code> plus fiables  </li>
</ul>
</li>
<li>Plus facile également, la gestion de la portée(scope): le moteur reconnaît maintenant le paramètre<strong> <code> scope </code></strong> par défaut dans un objet callback comme pour Fuse.<ul>
<li>Exemple: <code>{ scope:this, func:'callback', updfunc:'update', startscope:clip1, startfunc:'start'}</code><br>Ici, <code>func</code> et <code>updfunc</code> <em>tous les deux</em> s'affécteront à  <code>this</code>, alors que <code>startfunc</code> spécifie un cadre, une portée (scope), différent.</li>
</ul>
</li>
</ul>
<ul>
<li>Nouveau le paramètre<strong><code>suppressEndEvents</code></strong> dans la méthode <strong><code>ffTween</code></strong> (indentique à <code>rewTween</code>)</li>
</ul>
<a name="fusefmp"></a><br>
<br>
<br>
<br>
<h3>Mises à jour de FuseFMP (manipulation de la classe BitmapFilter) </h3>
<ul>
<li>Plus un seul paramètres n'a un nom avec le caractères "$" </li>
<li>Nouvelle valeur par défaut pour les Filtres de Flou: sauf si spécifié autrement, tout démarrage de flou FuseFMP(blurX et blurY)  est à zéro par défaut. Cette caractéristique rend beaucoup plus facile à tweener une de ces propriétés seule sans que l'autre propriété se retrouve avec un flou de 4px par défaut  . </br> </br> Nouvelle propriété de classe (statique) par défaut: <code> var static public <strong> BLUR_ZERO </strong>: Booléen = vrai; </code> </br>
<ul>
<li>Maintenant une action de Fuse simple telle <code>{ start_Blur_blurX:100 }</code>   laisse la cible nette une fois finie.</li>
<li>Si fixée à false, le réglage par défaut standard de Flash de 4-px de flou est utilisée.</li>
</ul>
</li>
<li>les propertés complexes de FuseFMP telles<code> BevelFilter_colors</code> sont tweenable dorénavant (cf <em><a href="#engine">Support du Multi-tween</a></em> plus haut)</li>
</ul>
<ul>
  <li><code>FuseFMP.setFilterProps</code> a été récrite et optimisée pour s'exécuter beaucoup plus rapidement.<ul>
        <li>Les paramètres d'un filtre existants ne seront pas interrompus par des appels supplémentaires</li>
      <li>Fidélité de l'ordonnancement des propriétés: Les filtres complexes comme GradientBevel paraissent devoir avoir le tableau de <em> colors </em> placé avant le tableau de <em> ratios </em>. L'ordonnancement est maintenant réspecté. Ce changement affecte aussi des propriétés passées à <code> writeFilter </code> quand un objet de propriétés est passé qui fait un appel à <code> setFilterProps </code>en interne. </li>
    </ul>
    <a name="kit"></a><br>
    <br>
    <br>
  </li>
</ul>
<h3>Autres Mises à jour du Kit Fuse</h3>
<ul>
<li>Documentation, commentaires, erreurs et avertissements améliorés <ul>
<li>Certains codes d'erreur ont légèrement changé</li>
</ul>
</li>
<li>Le paramètre <code> easyfunc </code> que l'on trouvait à plusieurs endroits a été supprimé du kit. à la place, utilisez des phrases du style d'<em> easyfunc </em> - comme "trace ('fait') " pour les paramétres de callback habituels <code> startfunc </code> / <code> updfunc </code> / <code> func </code> (quand les Raccourcis (Shortcuts) sont initialisés). </li>
<li>Changement du comportement: Les cibles ne sont plus automatiquement desinitialisées quand tous les tweens sont achevés, si quelconque écouteur y ont souscrit. </li>
</ul>
<a name="bugs"></a> <br>
<br>
<br>
<hr>
<h5>Bugfixes et interne</h5>
<ul>
  <li class="style3">&lt;c0 &gt; ZigoEngine.getTweens </code> maintenant en retourne 0 au lieu de NaN si appelé avant un premier tween. </li>
  <li> <span class="style3">Les Callbacks ainsi que le code propre à Fuse de gestion d'événements a été amélioré pour tout le Kit.</span>
<ul>
<li class="style3">L'analyse automatique des Callbacks est maintenant centralisé dans la nouvelle méthode <code> FuseKitCommon.parseCallback </code>.</li>
</ul>
</li>
<li class="style3">La propriété de Fuse <code>_sState:String</code> est remplacée par <code>_nState:Number</code></li>
<li class="style3"> Actualisation des classes Fuse et FuseItem pour les nouvelles fonctionnalités de <code> fastForward </code>. </li>
<li><span class="style3">Validation de commandes et traitement de l'affichage de <code> Fuse.traceItems </code> a été amélioré</span>
<ul>
<li class="style3"><code>FuseKitCommon._validateFuseCommand</code> méthode ajoutée</li>
</ul>
</li>
<li class="style3"><code>Fuse.getHandle</code> ajoutée pour standardiser la désignation des messages de sortie </li>
<li class="style3">FuseItem ne lançait pas de callback dans les certains cas où toutes les cible ou propriétés échouaient </li>
<li class="style3">Les paramétres de Fuse <code>extra1</code> &amp; <code>extra2</code> sont maintenant réparés</li>
<li class="style3">Les commandes du Fuse manquaient dans les messages de<code> traceItems </code>. </li>
<li class="style3"><code>Fuse.splice</code> laissait des valeurs nulles au lieu de retirer les items.</li>
<li class="style3"><code>Fuse.pushTween</code> ne fonctionnait pas correctement quand plusieurs cibles étaient passées</li>
</ul>
<p><a href="http://www.mosessupposes.com/Fuse/index.html" target="_top"><span class="style3">Visitez la page de Fuse pour les dernières mises à jour!</span></a></p>
<p>&nbsp;</p>
<p></p>
<p></p>
<p>&nbsp;</p>
<p>&nbsp; </p>
</body></html><span class="footer">Fait le 3/1/2007 8:08:21</span>